package com.meilai.project.service.finance.payment;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.meilai.project.dto.finance.payment.PaymentApplyCheckDTO;
import com.meilai.project.dto.finance.payment.PaymentApplyDTO;
import com.meilai.project.dto.finance.payment.PaymentApplyListDTO;
import com.meilai.project.entity.finance.payment.PaymentApply;
import com.meilai.project.vo.finance.payment.PaymentApplyVO;

/**
 * <p>
 * 付款单 服务类
 * </p>
 *
 * @author xchen
 * @since 2022-02-12
 */
public interface PaymentApplyService extends IService<PaymentApply> {
    // 获取列表
    Page<PaymentApplyVO> selectPageList(PaymentApplyListDTO searchDTO);

    // 获取详情
    PaymentApplyVO getOneById(Long id);

    // 保存
    boolean save(PaymentApplyDTO dto);

    // 提交
    boolean begin(PaymentApplyDTO dto);

    // 通过
    boolean pass(PaymentApplyCheckDTO dto);

    // 驳回
    boolean returnBack(PaymentApplyCheckDTO dto);

    // 删除
    boolean delete(Long id);

    // 彻底删除
    boolean actualDelete(Long id);
}
